package com.avengers.core.bean;


import java.math.BigDecimal;

/**
 * @author yu.wang
 * @since 2025/2/28 17:42
 **/
public interface Numbers {
    Integer INT_0 = 0;
    Integer INT_1 = 1;
    Integer INT_2 = 2;
    Integer INT_3 = 3;
    Integer INT_4 = 4;
    Integer INT_5 = 5;
    Integer INT_6 = 6;
    Integer INT_7 = 7;
    Integer INT_8 = 8;
    Integer INT_9 = 9;
    Integer INT_10 = 10;
    Integer INT_11 = 11;
    Integer INT_12 = 12;
    Integer INT_13 = 13;
    Integer INT_14 = 14;
    Integer INT_15 = 15;
    Integer INT_16 = 16;
    Integer INT_17 = 17;
    Integer INT_18 = 18;
    Integer INT_19 = 19;
    Integer INT_20 = 20;
    Integer INT_21 = 21;
    Integer INT_22 = 22;
    Integer INT_23 = 23;
    Integer INT_24 = 24;
    Integer INT_25 = 25;
    Integer INT_26 = 26;
    Integer INT_27 = 27;
    Integer INT_28 = 28;
    Integer INT_29 = 29;
    Integer INT_30 = 30;
    Integer INT_31 = 31;
    Integer INT_43 = 43;
    Integer INT_49 = 49;
    Integer INT_50 = 50;
    Integer INT_60 = 60;
    Integer INT_69 = 69;
    Integer INT_89 = 89;
    Integer INT_99 = 99;
    Integer INT_100 = 100;
    Integer INT_149 = 149;
    Integer INT_199 = 199;
    Integer INT_200 = 200;
    Integer INT_204 = 204;
    Integer INT_249 = 249;
    Integer INT_250 = 250;
    Integer INT_255 = 255;
    Integer INT_300 = 300;
    Integer INT_365 = 365;
    Integer INT_366 = 366;
    Integer INT_400 = 400;
    Integer INT_404 = 404;
    Integer INT_499 = 499;
    Integer INT_500 = 500;
    Integer INT_600 = 600;
    Integer INT_700 = 700;
    Integer INT_800 = 800;
    Integer INT_900 = 900;
    Integer INT_999 = 999;
    Integer INT_1000 = 1000;
    Integer INT_1001 = 1001;
    Integer INT_1999 = 1999;
    Integer INT_2000 = 2000;

    Integer INT_2018 = 2018;
    Integer INT_2019 = 2019;
    Integer INT_2020 = 2020;
    Integer INT_2021 = 2021;
    Integer INT_2022 = 2022;
    Integer INT_2023 = 2023;
    Integer INT_2024 = 2024;
    Integer INT_2025 = 2025;
    Integer INT_2026 = 2026;
    Integer INT_2027 = 2027;
    Integer INT_2028 = 2028;
    Integer INT_2029 = 2029;
    Integer INT_2030 = 2030;
    Integer INT_2031 = 2031;
    Integer INT_2032 = 2032;
    Integer INT_2033 = 2033;
    Integer INT_2034 = 2034;
    Integer INT_2035 = 2035;
    Integer INT_2499 = 2499;
    Integer INT_2500 = 2500;
    Integer INT_4999 = 4999;
    Integer INT_5000 = 5000;
    Integer INT_9999 = 9999;
    Integer INT_10000 = 10000;
    Integer INT_24999 = 24999;
    Integer INT_25000 = 25000;
    Integer INT_29999 = 29999;
    Integer INT_49999 = 49999;
    Integer INT_50000 = 50000;
    Integer INT_99999 = 99999;
    Integer INT_249999 = 249999;
    Integer INT_299999 = 299999;
    Integer INT_499999 = 499999;
    Integer INT_999999 = 999999;

    BigDecimal DECIMAL_0 = BigDecimal.ZERO;
    BigDecimal DECIMAL_1 = BigDecimal.ONE;
    BigDecimal DECIMAL_2 = BigDecimal.valueOf(INT_2);
    BigDecimal DECIMAL_3 = BigDecimal.valueOf(INT_3);
    BigDecimal DECIMAL_4 = BigDecimal.valueOf(INT_4);
    BigDecimal DECIMAL_5 = BigDecimal.valueOf(INT_5);
    BigDecimal DECIMAL_10 = BigDecimal.TEN;
    BigDecimal DECIMAL_20 = BigDecimal.valueOf(INT_20);
    BigDecimal DECIMAL_25 = BigDecimal.valueOf(INT_25);
    BigDecimal DECIMAL_49 = BigDecimal.valueOf(INT_49);
    BigDecimal DECIMAL_50 = BigDecimal.valueOf(INT_50);
    BigDecimal DECIMAL_69 = BigDecimal.valueOf(INT_69);
    BigDecimal DECIMAL_89 = BigDecimal.valueOf(INT_89);
    BigDecimal DECIMAL_99 = BigDecimal.valueOf(INT_99);
    BigDecimal DECIMAL_100 = BigDecimal.valueOf(INT_100);
    BigDecimal DECIMAL_149 = BigDecimal.valueOf(INT_149);
    BigDecimal DECIMAL_199 = BigDecimal.valueOf(INT_199);
    BigDecimal DECIMAL_200 = BigDecimal.valueOf(INT_200);
    BigDecimal DECIMAL_249 = BigDecimal.valueOf(INT_249);
    BigDecimal DECIMAL_250 = BigDecimal.valueOf(INT_250);
    BigDecimal DECIMAL_499 = BigDecimal.valueOf(INT_499);
    BigDecimal DECIMAL_500 = BigDecimal.valueOf(INT_500);
    BigDecimal DECIMAL_999 = BigDecimal.valueOf(INT_999);
    BigDecimal DECIMAL_1000 = BigDecimal.valueOf(INT_1000);
    BigDecimal DECIMAL_1999 = BigDecimal.valueOf(INT_1999);
    BigDecimal DECIMAL_2000 = BigDecimal.valueOf(INT_2000);
    BigDecimal DECIMAL_2499 = BigDecimal.valueOf(INT_2499);
    BigDecimal DECIMAL_2500 = BigDecimal.valueOf(INT_2500);
    BigDecimal DECIMAL_4999 = BigDecimal.valueOf(INT_4999);
    BigDecimal DECIMAL_5000 = BigDecimal.valueOf(INT_5000);
    BigDecimal DECIMAL_9999 = BigDecimal.valueOf(INT_9999);
    BigDecimal DECIMAL_10000 = BigDecimal.valueOf(INT_10000);
    BigDecimal DECIMAL_24999 = BigDecimal.valueOf(INT_24999);
    BigDecimal DECIMAL_25000 = BigDecimal.valueOf(INT_25000);
    BigDecimal DECIMAL_29999 = BigDecimal.valueOf(INT_29999);
    BigDecimal DECIMAL_49999 = BigDecimal.valueOf(INT_49999);
    BigDecimal DECIMAL_50000 = BigDecimal.valueOf(INT_50000);
    BigDecimal DECIMAL_99999 = BigDecimal.valueOf(INT_99999);
    BigDecimal DECIMAL_249999 = BigDecimal.valueOf(INT_249999);
    BigDecimal DECIMAL_299999 = BigDecimal.valueOf(INT_299999);
    BigDecimal DECIMAL_499999 = BigDecimal.valueOf(INT_499999);
    BigDecimal DECIMAL_999999 = BigDecimal.valueOf(INT_999999);

    Long TIME_MILLIS_SECOND = INT_1000.longValue();
    Long TIME_MILLIS_MINUTE = 60000L;
    Long TIME_MILLIS_HOUR = 3600000L;
    Long TIME_MILLIS_DAY = 86400000L;
    Long TIME_MILLIS_20190101 = 1546272000000L;
    Long TIME_MILLIS_20240101 = 1704038400000L;
    Long TIME_MILLIS_20250101 = 1735660800000L;
    Long TIME_MILLIS_20260101 = 1767196800000L;

    BigDecimal DECIMAL_0_01 = BigDecimal.valueOf(0.01);
    BigDecimal DECIMAL_0_02 = BigDecimal.valueOf(0.02);
    BigDecimal DECIMAL_0_03 = BigDecimal.valueOf(0.03);
    BigDecimal DECIMAL_0_08 = BigDecimal.valueOf(0.08);
    BigDecimal DECIMAL_0_1 = BigDecimal.valueOf(0.1);
    BigDecimal DECIMAL_0_15 = BigDecimal.valueOf(0.15);
    BigDecimal DECIMAL_0_2 = BigDecimal.valueOf(0.2);
    BigDecimal DECIMAL_0_6 = BigDecimal.valueOf(0.6);

    static BigDecimal DECIMAL(double value) {
        return BigDecimal.valueOf(value);
    }
}
